package com.UnionPayCenter.distribution.entity;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.io.Serializable;
import java.util.Date;

/**
 * 分销用户信息
 */
@Getter
@Setter
@ToString
public class UserDistributionDO implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 分销信息流水号
     */
    private Integer infoSn;
    /**
     * 分销模板主键
     */
    private String idgen;
    /**
     * 1.充值分享 2支付分享 3 注册分享
     */
    private String sType;
    /**
     * 分享流水号  对应充值/支付的主键
     */
    private String sSn;
    /**
     * 分销用户id
     */
    private Long userId;
    /**
     * 手机号
     */
    private String userMobile;
    /**
     * 用户名
     */
    private String userName;
    /**
     * 商户id
     */
    private Long bId;
    /**
     * 店铺id
     */
    private Long shopId;
    /**
     * 1.充值分销；2支付分销
     */
    private String distrId;
    /**
     * 分润比例  实际发生额比例
     */
    private Integer shareProp;
    /**
     * 分润类型 1.按发生额总额分润；2按比例分润；3.按分润总额分润
     * 场景：三级交易发生额100元，分润比例10%，1.一级分10元，二级分10元；2.一级分1元；二级分10元；3.一级分1元，二级分9元
     */
    private String shareType;
    /**
     * 是否支持赠送金额分销
     */
    private String preShareFlag;
    /**
     * 分销有效期 单位：天,即上下线分销关系持续多少天
     */
    private Integer shareVal;
    /**
     * 活动点击有效日期
     */
    private Date actDate;
    /**
     * 分销金额上限  单位：分 若无上限，则填写10位9，若超过上限，分销金额按上限金额记入
     */
    private Integer shareAmoLimit;
    /**
     * 分销级数
     */
    private Integer shareLvl;
    /**
     * 发生额下限，如小于限制，则不计入分销
     */
    private Integer accrualStart;
    /**
     * 发生额上限如大于限制，则按限制最高额计算
     */
    private Integer accrualEnd;
    /**
     * 对应的账户类型，目前默认赠送账户
     */
    private String accId;
    /**
     * 分销活动优先级
     */
    private Integer actLev;
    /**
     * 次数为0，则记录作废
     */
    private Integer actNumRes;
    /**
     * 0邀请页、1二维码、2小程序,用户自主选择后更新
     */
    private String distrMeth;
    /**
     * 分销优惠活动主键
     */
    private String disType;
    /**
     * 0作废1有效
     */
    private String flag;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 修改时间
     */
    private Date updateTime;
    /**
     * 备注
     */
    private String remark;
}